/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package model;

import control.Main;
import database.PessoaDB;
import java.util.ArrayList;

/**
 *
 * @author Guilherme
 */
public abstract class Pessoa
{
    private Integer id;
    private String nome;
    private String endereco;
    private String email;
    private ArrayList<String> telefones;

    public Pessoa()
    {
        
    }
    
    public Pessoa (String nome, String end, String mail, ArrayList<String> fones)
    {
        this.nome = nome;
        this.endereco = end;
        this.email = mail;
        this.telefones = fones;
        this.id = generateID();
    }

    public Pessoa(Integer id, String nome, String endereco, String email, ArrayList<String> fones)
    {
        this.id = id;
        this.nome = nome;
        this.endereco = endereco;
        this.email = email;
        this.telefones = fones;
    }
    
    private static int generateID()
    {
        return PessoaDB.getLastID() + 1;
    }
    
    public static boolean cadastrar(Usuario u)
    {
        if (u.getCodigoPermissao() > Main.PERMISSAO_MIN_CADASTRO)
        {
            
        }
        return false;
    }
    
    public static boolean remover(Usuario u)
    {
        return false;
    }   
    
    //<editor-fold defaultstate="collapsed" desc="Getters e Setters">
    public Integer getId()
    {
        return id;
    }
    
    public void setId(Integer id)
    {
        this.id = id;
    }
    
    public String getNome()
    {
        return nome;
    }
    
    public void setNome(String nome)
    {
        this.nome = nome;
    }
    
    public String getEndereco()
    {
        return endereco;
    }
    
    public void setEndereco(String endereco)
    {
        this.endereco = endereco;
    }
    
    public String getEmail()
    {
        return email;
    }
    
    public void setEmail(String email)
    {
        this.email = email;
    }
    
    public ArrayList<String> getTelefones()
    {
        return telefones;
    }
    
    public void setTelefones(ArrayList<String> telefones)
    {
        this.telefones = telefones;
    }
    
    //</editor-fold>
    
}
